<!doctype html>


<html>
<head>
  <link rel="shortcut icon" href="static/images/favicon.ico" type="image/x-icon">
  <title>uri.js (Closure Library API Documentation - JavaScript)</title>
  <link rel="stylesheet" href="static/css/base.css">
  <link rel="stylesheet" href="static/css/doc.css">
  <link rel="stylesheet" href="static/css/sidetree.css">
  <link rel="stylesheet" href="static/css/prettify.css">

  <script>
     var _staticFilePath = "static/";
  </script>

  <script src="static/js/doc.js">
  </script>

  <meta charset="utf8">
</head>

<body onload="prettyPrint()">

<div id="header">
  <div class="g-section g-tpl-50-50 g-split">
    <div class="g-unit g-first">
      <a id="logo" href="index.html">Closure Library API Documentation</a>
    </div>

    <div class="g-unit">
      <div class="g-c">
        <strong>Go to class or file:</strong>
        <input type="text" id="ac">
      </div>
    </div>
  </div>
</div>





<div class="colmask rightmenu">
<div class="colleft">
    <div class="col1">
      <!-- Column 1 start -->

<div id="title">
       <span class="fn">uri.js</span>
</div>

<div class="g-section g-tpl-75-25">
  <div class="g-unit g-first" id="description">
    Class for parsing and formatting URIs.

 Use goog.Uri(string) to parse a URI string.  Use goog.Uri.create(...) to
 create a new instance of the goog.Uri object from Uri parts.

 e.g: <code>var myUri = new goog.Uri(window.location);</code>

 Implements RFC 3986 for parsing/formatting URIs.
 <a href="http://gbiv.com/protocols/uri/rfc/rfc3986.html">http://gbiv.com/protocols/uri/rfc/rfc3986.html</a>

 Some changes have been made to the interface (more like .NETs), though the
 internal representation is now of un-encoded parts, this will change the
 behavior slightly.
  </div>
  

        <div class="g-unit" id="useful-links">
          <div class="title">Useful links</div>
          <ol>
            <li><a href="closure_goog_uri_uri.js.source.html"><span class='source-code-link'>Source Code</span></a></li>
          </ol>
        </div>
</div>

<h2 class="g-first">File Location</h2>
  <div class="g-section g-tpl-20-80">
    <div class="g-unit g-first">
      <div class="g-c-cell code-label">uri/uri.js</div>
    </div>
  </div>
<hr/>


  <h2>Classes</h2>
 <div class="fn-constructor">
        <a href="class_goog_Uri.html">
          goog.Uri</a><br/>
        <div class="class-details">This class contains setters and getters for the parts of the URI.
The <code>getXyz</code>/<code>setXyz</code> methods return the decoded part
-- so<code>goog.Uri.parse(&#39;/foo%20bar&#39;).getPath()</code> will return the
decoded path, <code>/foo bar</code>.

The constructor accepts an optional unparsed, raw URI string.  The parser
is relaxed, so special characters that aren&#39;t escaped but don&#39;t cause
ambiguities will not cause parse failures.

All setters return <code>this</code> and so may be chained, a la
<code>goog.Uri.parse(&#39;/foo&#39;).setFragment(&#39;part&#39;).toString()</code>.</div>
 </div>
 <div class="fn-constructor">
        <a href="class_goog_Uri_QueryData.html">
          goog.Uri.QueryData</a><br/>
        <div class="class-details">Class used to represent URI query parameters.  It is essentially a hash of
name-value pairs, though a name can be present more than once.

Has the same interface as the collections in goog.structs.</div>
 </div>
      
<br/>

  <div class="legend">
        <span class="key publickey"></span><span>Public</span>
        <span class="key protectedkey"></span><span>Protected</span>
        <span class="key privatekey"></span><span>Private</span>
  </div>


  <h2>Global Functions</h2>





<div class="section">
  <table class="horiz-rule">


     <tr class="even entry public">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.create"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">create<span class="args">(<span class="arg">opt_scheme</span>,&nbsp;<span class="arg">opt_userInfo</span>,&nbsp;<span class="arg">opt_domain</span>,&nbsp;<span class="arg">opt_port</span>,&nbsp;<span class="arg">opt_path</span>,&nbsp;<span class="arg">opt_query</span>,&nbsp;<span class="arg">opt_fragment</span>,&nbsp;<span class="arg">opt_ignoreCase</span>)</span>
        </span>
        &#8658; <div class="fullType"><span class="type"><a href="class_goog_Uri.html">goog.Uri</a></span></div>
      </div>


     <div class="entryOverview">
       Creates a new goog.Uri object from unencoded parts.
     </div>


    <! -- Method details -->
    <div class="entryDetails">

      <div class="detailsSection">
        <b>Arguments: </b>






<table class="horiz-rule">
     
   <tr class="even">
     <td>
        <span class="entryName">opt_scheme</span>
        : <div class="fullType"><span>?</span><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
        <div class="entryOverview">Scheme/protocol or full URI to parse.</div>
     </td>
   </tr>
     
   <tr class="odd">
     <td>
        <span class="entryName">opt_userInfo</span>
        : <div class="fullType"><span>?</span><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
        <div class="entryOverview">username:password.</div>
     </td>
   </tr>
     
   <tr class="even">
     <td>
        <span class="entryName">opt_domain</span>
        : <div class="fullType"><span>?</span><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
        <div class="entryOverview"><a href="http://www.google.com">www.google.com</a>.</div>
     </td>
   </tr>
     
   <tr class="odd">
     <td>
        <span class="entryName">opt_port</span>
        : <div class="fullType"><span>?</span><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Number">number</a></span></div>
        <div class="entryOverview">9830.</div>
     </td>
   </tr>
     
   <tr class="even">
     <td>
        <span class="entryName">opt_path</span>
        : <div class="fullType"><span>?</span><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
        <div class="entryOverview">/some/path/to/a/file.html.</div>
     </td>
   </tr>
     
   <tr class="odd">
     <td>
        <span class="entryName">opt_query</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span><span>&nbsp;|&nbsp;</span><span class="type"><a href="class_goog_Uri_QueryData.html">goog.Uri.QueryData</a></span></div>
        <div class="entryOverview">a=1&amp;b=2.</div>
     </td>
   </tr>
     
   <tr class="even">
     <td>
        <span class="entryName">opt_fragment</span>
        : <div class="fullType"><span>?</span><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
        <div class="entryOverview">The fragment without the #.</div>
     </td>
   </tr>
     
   <tr class="odd">
     <td>
        <span class="entryName">opt_ignoreCase</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Boolean">boolean</a></span></div>
        <div class="entryOverview">Whether to ignore parameter name case in #getParameterValue.</div>
     </td>
   </tr>
  </table>
      </div>
   
      <div class="detailsSection">
        <b>Returns:</b>&nbsp;<div class="fullType"><span class="type"><a href="class_goog_Uri.html">goog.Uri</a></span></div>&nbsp;
            The new URI object.
      </div>
  
    </div>
   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line802">code &raquo;</a>
  </td>
     </tr>


     <tr class="odd entry public">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.QueryData.createFromKeysValues"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.QueryData.</span><span class="entryName">createFromKeysValues<span class="args">(<span class="arg">keys</span>,&nbsp;<span class="arg">values</span>,&nbsp;<span class="arg">opt_uri</span>,&nbsp;<span class="arg">opt_ignoreCase</span>)</span>
        </span>
        &#8658; <div class="fullType"><span>!</span><span class="type"><a href="class_goog_Uri_QueryData.html">goog.Uri.QueryData</a></span></div>
      </div>


     <div class="entryOverview">
       Creates a new query data instance from parallel arrays of parameter names
and values. Allows for duplicate parameter names. Throws an error if the
lengths of the arrays differ.
     </div>


    <! -- Method details -->
    <div class="entryDetails">

      <div class="detailsSection">
        <b>Arguments: </b>






<table class="horiz-rule">
     
   <tr class="even">
     <td>
        <span class="entryName">keys</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Array">Array</a></span>.&lt;<span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span>&gt;</div>
        <div class="entryOverview">Parameter names.</div>
     </td>
   </tr>
     
   <tr class="odd">
     <td>
        <span class="entryName">values</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Array">Array</a></span></div>
        <div class="entryOverview">Parameter values.</div>
     </td>
   </tr>
     
   <tr class="even">
     <td>
        <span class="entryName">opt_uri</span>
        : <div class="fullType"><span class="type"><a href="class_goog_Uri.html">goog.Uri</a></span></div>
        <div class="entryOverview">URI object that should have it&#39;s cache invalidated when this object updates.</div>
     </td>
   </tr>
     
   <tr class="odd">
     <td>
        <span class="entryName">opt_ignoreCase</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Boolean">boolean</a></span></div>
        <div class="entryOverview">If true, ignore the case of the parameter name in #get.</div>
     </td>
   </tr>
  </table>
      </div>
   
      <div class="detailsSection">
        <b>Returns:</b>&nbsp;<div class="fullType"><span>!</span><span class="type"><a href="class_goog_Uri_QueryData.html">goog.Uri.QueryData</a></span></div>&nbsp;
            The populated query data instance.
      </div>
  
    </div>
   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line1122">code &raquo;</a>
  </td>
     </tr>


     <tr class="even entry public">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.QueryData.createFromMap"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.QueryData.</span><span class="entryName">createFromMap<span class="args">(<span class="arg">map</span>,&nbsp;<span class="arg">opt_uri</span>,&nbsp;<span class="arg">opt_ignoreCase</span>)</span>
        </span>
        &#8658; <div class="fullType"><span>!</span><span class="type"><a href="class_goog_Uri_QueryData.html">goog.Uri.QueryData</a></span></div>
      </div>


     <div class="entryOverview">
       Creates a new query data instance from a map of names and values.
     </div>


    <! -- Method details -->
    <div class="entryDetails">

      <div class="detailsSection">
        <b>Arguments: </b>






<table class="horiz-rule">
     
   <tr class="even">
     <td>
        <span class="entryName">map</span>
        : <div class="fullType"><span>!</span><span class="type"><a href="class_goog_structs_Map.html">goog.structs.Map</a></span><span>&nbsp;|&nbsp;</span><span>!</span><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Object">Object</a></span></div>
        <div class="entryOverview">Map of string parameter names to string parameter values.</div>
     </td>
   </tr>
     
   <tr class="odd">
     <td>
        <span class="entryName">opt_uri</span>
        : <div class="fullType"><span class="type"><a href="class_goog_Uri.html">goog.Uri</a></span></div>
        <div class="entryOverview">URI object that should have it&#39;s cache invalidated when this object updates.</div>
     </td>
   </tr>
     
   <tr class="even">
     <td>
        <span class="entryName">opt_ignoreCase</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Boolean">boolean</a></span></div>
        <div class="entryOverview">If true, ignore the case of the parameter name in #get.</div>
     </td>
   </tr>
  </table>
      </div>
   
      <div class="detailsSection">
        <b>Returns:</b>&nbsp;<div class="fullType"><span>!</span><span class="type"><a href="class_goog_Uri_QueryData.html">goog.Uri.QueryData</a></span></div>&nbsp;
            The populated query data instance.
      </div>
  
    </div>
   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line1096">code &raquo;</a>
  </td>
     </tr>


     <tr class="odd entry private">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.decodeOrEmpty_"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">decodeOrEmpty_<span class="args">(<span class="arg">val</span>)</span>
        </span>
        &#8658; <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
      </div>


     <div class="entryOverview">
       Decodes a value or returns the empty string if it isn&#39;t defined or empty.
     </div>


    <! -- Method details -->
    <div class="entryDetails">

      <div class="detailsSection">
        <b>Arguments: </b>






<table class="horiz-rule">
     
   <tr class="even">
     <td>
        <span class="entryName">val</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span><span>&nbsp;|&nbsp;</span><span class="type">undefined</span></div>
        <div class="entryOverview">Value to decode.</div>
     </td>
   </tr>
  </table>
      </div>
   
      <div class="detailsSection">
        <b>Returns:</b>&nbsp;<div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>&nbsp;
            Decoded value.
      </div>
  
    </div>
   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line894">code &raquo;</a>
  </td>
     </tr>


     <tr class="even entry private">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.encodeChar_"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">encodeChar_<span class="args">(<span class="arg">ch</span>)</span>
        </span>
        &#8658; <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
      </div>


     <div class="entryOverview">
       Converts a character in [\01-\177] to its unicode character equivalent.
     </div>


    <! -- Method details -->
    <div class="entryDetails">

      <div class="detailsSection">
        <b>Arguments: </b>






<table class="horiz-rule">
     
   <tr class="even">
     <td>
        <span class="entryName">ch</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
        <div class="entryOverview">One character string.</div>
     </td>
   </tr>
  </table>
      </div>
   
      <div class="detailsSection">
        <b>Returns:</b>&nbsp;<div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>&nbsp;
            Encoded string.
      </div>
  
    </div>
   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line957">code &raquo;</a>
  </td>
     </tr>


     <tr class="odd entry private">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.encodeSpecialChars_"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">encodeSpecialChars_<span class="args">(<span class="arg">unescapedPart</span>,&nbsp;<span class="arg">extra</span>)</span>
        </span>
        &#8658; <div class="fullType"><span>?</span><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
      </div>


     <div class="entryOverview">
       If unescapedPart is non null, then escapes any characters in it that aren&#39;t
valid characters in a url and also escapes any special characters that
appear in extra.
     </div>


    <! -- Method details -->
    <div class="entryDetails">

      <div class="detailsSection">
        <b>Arguments: </b>






<table class="horiz-rule">
     
   <tr class="even">
     <td>
        <span class="entryName">unescapedPart</span>
        : <div class="fullType"><span class="type">*</span></div>
        <div class="entryOverview">The string to encode.</div>
     </td>
   </tr>
     
   <tr class="odd">
     <td>
        <span class="entryName">extra</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/RegExp">RegExp</a></span></div>
        <div class="entryOverview">A character set of characters in [\01-\177].</div>
     </td>
   </tr>
  </table>
      </div>
   
      <div class="detailsSection">
        <b>Returns:</b>&nbsp;<div class="fullType"><span>?</span><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>&nbsp;
            null iff unescapedPart == null.
      </div>
  
    </div>
   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line932">code &raquo;</a>
  </td>
     </tr>


     <tr class="even entry private">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.encodeSpecialRegExp_"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">encodeSpecialRegExp_<span class="args">()</span>
        </span>
      </div>


     <div class="entryOverview">
       Regular expression used for determining if a string needs to be encoded.
     </div>

   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line919">code &raquo;</a>
  </td>
     </tr>


     <tr class="odd entry private">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.encodeString_"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">encodeString_<span class="args">(<span class="arg">unescapedPart</span>)</span>
        </span>
        &#8658; <div class="fullType"><span>?</span><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
      </div>


     <div class="entryOverview">
       URI encode a string, or return null if it&#39;s not a string.
     </div>


    <! -- Method details -->
    <div class="entryDetails">

      <div class="detailsSection">
        <b>Arguments: </b>






<table class="horiz-rule">
     
   <tr class="even">
     <td>
        <span class="entryName">unescapedPart</span>
        : <div class="fullType"><span class="type">*</span></div>
        <div class="entryOverview">Unescaped string.</div>
     </td>
   </tr>
  </table>
      </div>
   
      <div class="detailsSection">
        <b>Returns:</b>&nbsp;<div class="fullType"><span>?</span><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>&nbsp;
            Escaped string.
      </div>
  
    </div>
   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line906">code &raquo;</a>
  </td>
     </tr>


     <tr class="even entry public">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.haveSameDomain"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">haveSameDomain<span class="args">(<span class="arg">uri1String</span>,&nbsp;<span class="arg">uri2String</span>)</span>
        </span>
        &#8658; <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Boolean">boolean</a></span></div>
      </div>


     <div class="entryOverview">
       Checks whether two URIs have the same domain.
     </div>


    <! -- Method details -->
    <div class="entryDetails">

      <div class="detailsSection">
        <b>Arguments: </b>






<table class="horiz-rule">
     
   <tr class="even">
     <td>
        <span class="entryName">uri1String</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
        <div class="entryOverview">First URI string.</div>
     </td>
   </tr>
     
   <tr class="odd">
     <td>
        <span class="entryName">uri2String</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
        <div class="entryOverview">Second URI string.</div>
     </td>
   </tr>
  </table>
      </div>
   
      <div class="detailsSection">
        <b>Returns:</b>&nbsp;<div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Boolean">boolean</a></span></div>&nbsp;
            true if the two URIs have the same domain; false otherwise.
      </div>
  
    </div>
   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line1002">code &raquo;</a>
  </td>
     </tr>


     <tr class="odd entry public">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.parse"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">parse<span class="args">(<span class="arg">uri</span>,&nbsp;<span class="arg">opt_ignoreCase</span>)</span>
        </span>
        &#8658; <div class="fullType"><span class="type"><a href="class_goog_Uri.html">goog.Uri</a></span></div>
      </div>


     <div class="entryOverview">
       Creates a uri from the string form.  Basically an alias of new goog.Uri().
If a Uri object is passed to parse then it will return a clone of the object.
     </div>


    <! -- Method details -->
    <div class="entryDetails">

      <div class="detailsSection">
        <b>Arguments: </b>






<table class="horiz-rule">
     
   <tr class="even">
     <td>
        <span class="entryName">uri</span>
        : <div class="fullType"><span class="type">*</span></div>
        <div class="entryOverview">Raw URI string or instance of Uri object.</div>
     </td>
   </tr>
     
   <tr class="odd">
     <td>
        <span class="entryName">opt_ignoreCase</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Boolean">boolean</a></span></div>
        <div class="entryOverview">Whether to ignore the case of parameter names in #getParameterValue.</div>
     </td>
   </tr>
  </table>
      </div>
   
      <div class="detailsSection">
        <b>Returns:</b>&nbsp;<div class="fullType"><span class="type"><a href="class_goog_Uri.html">goog.Uri</a></span></div>&nbsp;
            The new URI object.
      </div>
  
    </div>
   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line781">code &raquo;</a>
  </td>
     </tr>


     <tr class="even entry private">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.reDisallowedInFragment_"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">reDisallowedInFragment_<span class="args">()</span>
        </span>
      </div>


     <div class="entryOverview">
       Regular expression for characters that are disallowed in the fragment.
     </div>

   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line993">code &raquo;</a>
  </td>
     </tr>


     <tr class="odd entry private">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.reDisallowedInPath_"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">reDisallowedInPath_<span class="args">()</span>
        </span>
      </div>


     <div class="entryOverview">
       Regular expression for characters that are disallowed in the path.
     </div>

   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line977">code &raquo;</a>
  </td>
     </tr>


     <tr class="even entry private">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.reDisallowedInQuery_"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">reDisallowedInQuery_<span class="args">()</span>
        </span>
      </div>


     <div class="entryOverview">
       Regular expression for characters that are disallowed in the query.
     </div>

   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line985">code &raquo;</a>
  </td>
     </tr>


     <tr class="odd entry private">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.reDisallowedInSchemeOrUserInfo_"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">reDisallowedInSchemeOrUserInfo_<span class="args">()</span>
        </span>
      </div>


     <div class="entryOverview">
       Regular expression for characters that are disallowed in the scheme or
userInfo part of the URI.
     </div>

   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line969">code &raquo;</a>
  </td>
     </tr>


     <tr class="even entry public">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.removeDotSegments"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">removeDotSegments<span class="args">(<span class="arg">path</span>)</span>
        </span>
        &#8658; <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
      </div>


     <div class="entryOverview">
       Removes dot segments in given path component, as described in
RFC 3986, section 5.2.4.
     </div>


    <! -- Method details -->
    <div class="entryDetails">

      <div class="detailsSection">
        <b>Arguments: </b>






<table class="horiz-rule">
     
   <tr class="even">
     <td>
        <span class="entryName">path</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
        <div class="entryOverview">A non-empty path component.</div>
     </td>
   </tr>
  </table>
      </div>
   
      <div class="detailsSection">
        <b>Returns:</b>&nbsp;<div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>&nbsp;
            Path component with removed dot segments.
      </div>
  
    </div>
   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line848">code &raquo;</a>
  </td>
     </tr>


     <tr class="odd entry public">
       <td class="access"></td>






  <td>
    <a name="goog.Uri.resolve"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">resolve<span class="args">(<span class="arg">base</span>,&nbsp;<span class="arg">rel</span>)</span>
        </span>
        &#8658; <div class="fullType"><span class="type"><a href="class_goog_Uri.html">goog.Uri</a></span></div>
      </div>


     <div class="entryOverview">
       Resolves a relative Uri against a base Uri, accepting both strings and
Uri objects.
     </div>


    <! -- Method details -->
    <div class="entryDetails">

      <div class="detailsSection">
        <b>Arguments: </b>






<table class="horiz-rule">
     
   <tr class="even">
     <td>
        <span class="entryName">base</span>
        : <div class="fullType"><span class="type">*</span></div>
        <div class="entryOverview">Base Uri.</div>
     </td>
   </tr>
     
   <tr class="odd">
     <td>
        <span class="entryName">rel</span>
        : <div class="fullType"><span class="type">*</span></div>
        <div class="entryOverview">Relative Uri.</div>
     </td>
   </tr>
  </table>
      </div>
   
      <div class="detailsSection">
        <b>Returns:</b>&nbsp;<div class="fullType"><span class="type"><a href="class_goog_Uri.html">goog.Uri</a></span></div>&nbsp;
            Resolved uri.
      </div>
  
    </div>
   
  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line828">code &raquo;</a>
  </td>
     </tr>


  </table>
</div>



  <h2>Global Properties</h2>





<div class="section">
  <table class="horiz-rule">


     <tr class="even entry public">
       <td class="access"></td>





  <a name="goog.Uri.RANDOM_PARAM"></a>

  <td>


     <div class="arg">
        <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.</span><span class="entryName">RANDOM_PARAM</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
     </div>


     <div class="entryOverview">
       Parameter name added to stop caching.
     </div>

  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line103">Code &raquo;</a>
  </td>
     </tr>


     <tr class="odd entry private">
       <td class="access"></td>





  <a name="goog.Uri.QueryData.decodedQuery_"></a>

  <td>


     <div class="arg">
        <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.Uri.QueryData.</span><span class="entryName">decodedQuery_</span>
        : <div class="fullType"><span>?</span><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
     </div>


     <div class="entryOverview">
       Decoded query string, or null if it requires computing.
     </div>

  </td>


  <td class="view-code">
     <a href="closure_goog_uri_uri.js.source.html#line1161">Code &raquo;</a>
  </td>
     </tr>


  </table>
</div>



      <!-- Column 1 end -->
    </div>

        <div class="col2">
          <!-- Column 2 start -->
          <div class="col2-c">
            <h2 id="ref-head">Directory uri</h2>
            <div id="localView"></div>
          </div>

          <div class="col2-c">
            <h2 id="ref-head">File Reference</h2>
            <div id="sideFileIndex" rootPath="closure/goog" current="uri/uri.js"></div>
          </div>
          <!-- Column 2 end -->
        </div>
</div>
</div>

</body>
</html>
